function initCnf(path, callback) {
	let config = {
		entry: [
			`react-antd.html?path=${path}`,
			`vue2-element.html?path=${path}`,
			`vue3-element.html?path=${path}`
		],
		config: [`${path}/config/index.js`]
	};
	if (typeof callback === 'function') {
		const back = callback(config, path);
		config = back ? back : config;
	}
	return {
		[path]: config,
	};
};

export default {
	...initCnf("全局弹框/基础弹框"),
	...initCnf("全局弹框/使用$tan"),
	...initCnf("全局弹框/无限弹框"),
	...initCnf("拓展用法/JiessBetween左右布局"),
	...initCnf("拓展用法/staticValues初始表单数据"),
	...initCnf("拓展用法/自定义表单验证"),
	...initCnf("通用列表/ExpandFilter列表", cnf => {
		// react中没有ExpandFilter
		cnf.entry.shift(0);
	}),
	...initCnf("通用列表/TableFilter列表"),
	...initCnf("通用列表/初始JiessTable"),
	...initCnf("表单组件/area详解"),
	...initCnf("表单组件/下拉框类"),
	...initCnf("表单组件/级联面版类"),
	...initCnf("表单组件/输入框类"),
	...initCnf("基础示例/$computed计算属性"),
	...initCnf("基础示例/$elseIf"),
	...initCnf("基础示例/$if与$show"),
	...initCnf("基础示例/$watchEffect响应式引发"),
	...initCnf("基础示例/$watch响应式观察"),
	...initCnf("基础示例/Hello Jiess"),
	...initCnf("基础示例/JiessFragment"),
	...initCnf("基础示例/ref节点获取"),
	...initCnf("基础示例/render嵌套"),
	...initCnf("基础示例/插槽-Jiess"),
	...initCnf("基础示例/插槽-Jiess-实践"),
	...initCnf("基础示例/插槽-vue", (cnf, path) => {
		cnf.entry = [
			`${path}/vue2.html`,
			`${path}/vue3.html`,
		];
		delete cnf.config;
	}),
	...initCnf("基础示例/初识add"),
	...initCnf("基础示例/初识children属性"),
	...initCnf("基础示例/初识is属性"),
	...initCnf("基础示例/初识Jiess响应式"),
	...initCnf("基础示例/初识Jiess组件"),
	...initCnf("基础示例/初识render"),
	...initCnf("基础示例/初识render属性"),
	...initCnf("基础示例/生命周期"),
	...initCnf("基础示例/事件处理"),
	...initCnf("基础示例/数据注入provider"),
	...initCnf("基础示例/响应式的深度控制"),
	...initCnf("基础示例/响应式结果矫正"),
	...initCnf("基础示例/响应式结果矫正-实践"),
	...initCnf("基础示例/响应式整体监听"),
	...initCnf("基础示例/异步setup"),
}